'\" te
.\"  Copyright 1989 AT&T Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
.\"  Copyright 2012, Joyent, Inc. All Rights Reserved
.\"  Copyright 2019, Peter tribble.
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH PRTCONF 8 "Jan 21, 2019"
.SH NAME
prtconf \- print system configuration
.SH SYNOPSIS
.nf
\fB/usr/sbin/prtconf\fR [\fB-V\fR] | [\fB-F\fR] | [\fB-m\fR] | [\fB-x\fR] | [\fB-bpv\fR] | [\fB-acdDPv\fR]
     [\fIdev_path\fR]
.fi

.SH DESCRIPTION
The \fBprtconf\fR command prints the system configuration information. The
output includes the total amount of memory, and the configuration of system
peripherals formatted as a device tree.
.sp
.LP
If a device path is specified on the command line for those command options
that can take a device path, \fBprtconf\fR will only display information for
that device node.
.SH OPTIONS
The following options are supported:
.sp
.ne 2
.na
\fB-a\fR
.ad
.RS 6n
Display all the ancestors device nodes, up to the root node of the device tree,
for the device specified on the command line.
.RE

.sp
.ne 2
.na
\fB-b\fR
.ad
.RS 6n
Display the firmware device tree root properties for the purpose of platform
identification. These properties are "name", "compatible", "banner-name" and
"model".
.RE

.sp
.ne 2
.na
\fB-c\fR
.ad
.RS 6n
Display the device subtree rooted at the device node specified on the command
line, that is, display all the children of the device node specified on the
command line.
.RE

.sp
.ne 2
.na
\fB-d\fR
.ad
.RS 6n
Display vendor ID and device ID for PCI and PCI Express devices, in addition to
the nodename. If the information is known, the vendor name and device name will
also be shown.
.RE

.sp
.ne 2
.na
\fB-D\fR
.ad
.RS 6n
For each system peripheral in the device tree, displays the name of the device
driver used to manage the peripheral.
.RE

.sp
.ne 2
.na
\fB-F\fR
.ad
.RS 6n
Returns the device path name of the console frame buffer,
if one exists. If there is no frame buffer, \fBprtconf\fR returns a non-zero
exit code. This flag must be used by itself. It returns only the name of the
console, frame buffer device or a non-zero exit code. For example, if the
console frame buffer on a SUNW,Ultra-30 is \fBffb\fR, the command returns:
\fB/SUNW,ffb@1e,0:ffb0\fR. This option could be used to create a symlink for
\fB/dev/fb\fR to the actual console device.
.RE

.sp
.ne 2
.na
\fB-m\fR
.ad
.RS 6n
Displays the amount of system memory in megabytes.
This flag must be used by itself.
.RE


.ne 2
.na
\fB-p\fR
.ad
.RS 6n
Displays information derived from the device tree provided by the firmware
(PROM) on SPARC platforms or the booting system on x86 platforms.The device
tree information displayed using this option is a snapshot of the initial
configuration and may not accurately reflect reconfiguration events that occur
later.
.RE

.sp
.ne 2
.na
\fB-P\fR
.ad
.RS 6n
Includes information about pseudo devices. By default, information regarding
pseudo devices is omitted.
.RE

.sp
.ne 2
.na
\fB-v\fR
.ad
.RS 6n
Specifies verbose mode.
.RE

.sp
.ne 2
.na
\fB-V\fR
.ad
.RS 6n
Displays platform-dependent \fBPROM\fR (on SPARC platforms) or booting system
(on x86 platforms) version information. This flag must be used by itself. The
output is a string. The format of the string is arbitrary and
platform-dependent.
.RE

.sp
.ne 2
.na
\fB-x\fR
.ad
.RS 6n
A legacy flag that reported if the firmware on this system is 64-bit ready.
As illumos only runs on 64-bit platforms, this flag is kept for compatibility
only, and zero is always returned.
.sp
This flag overrides all other flags and must be used by itself.
.RE

.SH OPERANDS
The following operands are supported:
.sp
.ne 2
.na
\fIdev_path\fR
.ad
.RS 12n
The path to a target device minor node, device nexus node, or device link for
which device node configuration information is displayed
.RE

.SH EXIT STATUS
The following exit values are returned:
.sp
.ne 2
.na
\fB0\fR
.ad
.RS 12n
No error occurred.
.RE

.sp
.ne 2
.na
\fBnon-zero\fR
.ad
.RS 12n
With the \fB-F\fR option, a non-zero return value means that the
output device is not a frame buffer. In all other cases, a
non-zero return value means that an error occurred.
.RE

.SH ATTRIBUTES
See \fBattributes\fR(7) for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
Interface Stability	Unstable
.TE

.SH SEE ALSO
.BR openprom (4D),
.BR attributes (7),
.BR fuser (8),
.BR modinfo (8),
.BR sysdef (8)
.SH NOTES
The output of the \fBprtconf\fR command is highly dependent on the version of
the \fBPROM\fR installed in the system. The output will be affected in
potentially all circumstances.
.sp
.LP
The \fBdriver not attached\fR message means that no driver is currently
attached to that instance of the device. In general, drivers are loaded and
installed (and attached to hardware instances) on demand, and when needed, and
may be uninstalled and unloaded when the device is not in use.
.sp
.LP
On x86 platforms, the use of \fBprtconf\fR \fB-vp\fR provides a subset of
information from \fBprtconf\fR \fB-v\fR. The value of integer properties from
\fBprtconf\fR \fB-vp\fR might require byte swapping for correct interpretation.
